6fa1d250c7734483032a6b0a18dbe267d335f2b2,spring-social-facebook/src/main/java/org/springframework/social/facebook/api/impl/json/QuestionOptionListDeserializer.java,QuestionOptionListDeserializer,deserialize,#JsonParser#DeserializationContext#,33
Before Change
@Override
public List<QuestionOption> deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
mapper.setDeserializationConfig(ctxt.getConfig());
jp.setCodec(mapper);
if (jp.hasCurrentToken()) {
JsonNode dataNode = jp.readValueAsTree().get("data");
if (dataNode != null) {
return (List<QuestionOption>) mapper.readValue(dataNode, new TypeReference<List<QuestionOption>>() {});
}
}
After Change
@SuppressWarnings("unchecked")
@Override
public List<QuestionOption> deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
mapper.registerModule(new FacebookModule());
jp.setCodec(mapper);
if (jp.hasCurrentToken()) {
TreeNode dataNode = jp.readValueAsTree().get("data");
if (dataNode != null) {
// TODO: THIS PROBABLY ISN"T RIGHT
return (List<QuestionOption>) mapper.reader(new TypeReference<List<QuestionOption>>() {}).readValue((JsonNode) dataNode);
}
}